#include<unistd.h>
#include<fcntl.h>
#include<signal.h>
#include<string.h>
#include<sys/stat.h>
#include<stdlib.h>
#include<stdio.h>
#include<errno.h>
void print_set(sigset_t *set)
{
    for(int i=1;i<32;i++)
    {
        if(sigismember(set,i))
        {
            putchar('1');
            }else
            {
                putchar('0');
                }
        }


        printf("\n");
    }
int main(int argc,char** argv)
{
    sigset_t set,oldset,checkset;
    //1:创建自己的set用于和pcb中的mask阻塞信号集进行相关操作
    sigemptyset(&set);

    //向set中添加具体的信号
    sigaddset(&set,SIGINT);
    //2:将set集合与mask集合进行位或操作
    sigprocmask(SIG_BLOCK,&set,&checkset);
    //3:获取未决信号集

    while(1)
    {
    sigpending(&checkset);
     print_set(&checkset);
     sleep(1);
    }
return 0;


}
